#ifndef _IMAGE_H_
#define _IMAGE_H_

#include <string>

using namespace std;

class Image
{

public:
    enum ImageStatus
    {   
        IMAGE_ILLEGAL = -3,     //图像非法
        IMAGE_NO_FOUND = -2,    //图像找不到
        IMAGE_NOT_INIT = -1,       
        IMAGE_OK = 0,
    };

    struct ImageInfo
    {
        int width;
        int height;
        int bpp;

        string name;
    };

protected:
    ImageStatus status;
    ImageInfo image_info;
public:
    Image();
    virtual ~Image();


    virtual void GetImage(unsigned char *buf, unsigned long line) = 0;
    ImageInfo &GetInfo(void) { return image_info; };
    ImageStatus GetStatus(void) { return status; }
};







#endif
